home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Applications 1996 May / SGI IRIX 6.2 Applications 1996 May.iso / dist / impr_dev.idb / usr / include / scanipc.h.z / scanipc.h
C/C++ Source or Header  |  1996-05-06  |  2KB  |  111 lines

  1. #ifndef __SCANIPC_H__
  2. #define __SCANIPC_H__
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6.  
  7. /*
  8.  * scanipc.h
  9.  *
  10.  *      Inter-process communication stuff between scanner apps and scanner
  11.  * drivers.
  12.  *
  13.  * Copyright 1992, Silicon Graphics, Inc.
  14.  * All Rights Reserved.
  15.  *
  16.  * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics,
  17.  * Inc.; the contents of this file may not be disclosed to third
  18.  * parties, copied or duplicated in any form, in whole or in part,
  19.  * without the prior written permission of Silicon Graphics, Inc.
  20.  *
  21.  * RESTRICTED RIGHTS LEGEND:
  22.  * Use, duplication or disclosure by the Government is subject to
  23.  * restrictions as set forth in subdivision (c)(1)(ii) of the Rights
  24.  * in Technical Data and Computer Software clause at DFARS
  25.  * 252.227-7013, and/or in similar or successor clauses in the FAR,
  26.  * DOD or NASA FAR Supplement. Unpublished - rights reserved under the
  27.  * Copyright Laws of the United States.
  28.  */
  29.  
  30. #ident "$Revision: 1.12 $"
  31.  
  32. /*
  33.  * Required functions
  34.  */
  35. #define SCN_INITOK 0
  36. #define SCN_DIE 1
  37. #define SCN_MINMAXRES 2
  38. #define SCN_NRES 3
  39. #define SCN_RES 4
  40. #define SCN_NTYPES 5
  41. #define SCN_TYPES 6
  42. #define SCN_PAGESIZE 7
  43. #define SCN_SETUP 8
  44. #define SCN_SCAN 9
  45. #define SCN_ABORT 10
  46. #define SCN_GETSIZE 11
  47. #define SCN_FEEDERGETFLAGS 12
  48. #define SCN_FEEDERSETFLAGS 13
  49. #define SCN_FEEDERADVANCE 14
  50. #define SCN_FEEDERREADY 15
  51. #define SCN_GETVERSION 16
  52. #define SCN_GETSAVEOPTLEN 17
  53. #define SCN_GETSAVEOPT 18
  54. #define SCN_SETSAVEOPT 19
  55.  
  56. /*
  57.  * Scanner specific options start here
  58.  */
  59. #define SCN_SCANSPECIFIC 200
  60.  
  61. #if defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS)
  62.  
  63. typedef struct tag_scminmaxres {
  64.     float minx, miny, maxx, maxy;
  65. } SCMINMAXRES;
  66.  
  67. typedef struct tag_scsetup {
  68.     int preview;
  69.     SCDATATYPE type;
  70.     int rmetric;
  71.     float xres, yres;
  72.     int wmetric;
  73.     float x, y, width, height;
  74. } SCSETUP;
  75.  
  76. typedef struct tag_scsize {
  77.     long xbytes, xpixels, ysize;
  78. } SCSIZE;
  79.  
  80. typedef struct tag_scwindow {
  81.     float x, y, width, height;
  82. } SCWINDOW;
  83.  
  84. typedef struct tag_scanopt {
  85.     int out, in;
  86. } SCANOPT;
  87.  
  88. typedef struct tag_cmdhdr {
  89.     unsigned int cmd, arglen;
  90. } CMDHDR;
  91.  
  92. typedef struct tag_replhdr {
  93.     int len, errno;
  94. } REPLHDR;
  95.  
  96. int SCScanCmd(SCANNER *s, int cmd, void *args, int arglen, void *res,
  97.           int reslen);
  98.  
  99. SCANOPT * SCGetScanOpt(int *argc, char *argv[]);
  100.  
  101. int SCScanOpt(SCANOPT *s, int cmd, void *args, int arglen,
  102.           void *res, int reslen);
  103.  
  104.  
  105. #endif /* C || C++ */
  106.  
  107. #ifdef __cplusplus
  108. }
  109. #endif
  110. #endif /* !__SCANIPC_H__ */
  111.